跳到主要内容

Ubuntu 网络设置及使用 Proxy

简单设置系统代理

export http_proxy="http://proxy-XXXXX:port"
export https_proxy="https://proxy-XXXXX:port"
# or
export all_proxy="socks5://proxy-XXXXX:port"

# 如果代理服务器需要用户名和密码才能访问,需要填写上面的username和passwd部分,否则的话,省略这两部分。
export https_proxy="http://username:password@proxyServer:port/"

# 设置不需要代理的地址
export no_proxy="127.0.0.1,192.168.124.0/16,*.example.com"

取消代理

unset http_proxy
unset https_proxy

如果使用 Clash for Windows 则更方便

export hostip=$(cat /etc/resolv.conf |grep -oP '(?<=nameserver\ ).*')
export https_proxy="http://${hostip}:7890"
export http_proxy="http://${hostip}:7890"

测试:

sudo apt install w3m
w3m www.google.com

具体参考 WSL2通过Clash for Windows使用Windows代理

设置 IP

ubuntu20.04 修改 ip 地址的方法

使用 ifconfig 命令查看网卡信息获取网卡名称。

再输入以下命令修改 yaml 配置文件。

sudo vi /etc/netplan/00-installer-config.yaml #打开yaml配置文件

修改内容如下:

network:
ethernets:
ens01: #配置的网卡的名称
addresses: [192.168.0.1/24] #配置的静态ip地址和掩码
dhcp4: no #关闭DHCP,如果需要打开DHCP则写yes
optional: true
gateway4: 192.168.0.1 #网关地址
nameservers:
addresses: [192.168.0.1,114.114.114.114] #DNS服务器地址,多个DNS服务器地址需要用英文逗号分隔开
version: 2
renderer: networkd #指定后端采用systemd-networkd或者 Network Manager,不填写则默认使用systemd-workd

例如:

network:
ethernets:
eth0:
addresses:
- 192.168.15.72/20
gateway4: 192.168.12.2
nameservers:
addresses:
- 223.5.5.5
search: []
optional: true
version: 2

修改好网卡配置文件后,通过以下命令使修改生效即可。

sudo netplan apply

修改成功后,可通过 ifconfig 命令查看配置的新 ip 地址是否生效。

如果是使用的 VMware 需要设置一下 DNS,取消勾选 “自动检测可用的 DNS 服务器”,配置与真机相同的 DNS 服务器,确定保存。

然后一定要配置 DNS 服务器

network:
ethernets:
eth0:
addresses:
- 192.168.15.72/20
gateway4: 192.168.12.2
nameservers:
addresses: [8.8.8.8,223.5.5.5] # DNS
optional: true
version: 2

更换镜像源

输入以下命令备份原来的源。

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

再输入以下命令打开 sources.list 配置文件更换源。

sudo vim /etc/apt/sources.list

# 配置内容如下
#添加阿里源
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

#添加清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse multiverse

再输入命令更新源。

sudo apt-get update

最后输入命令更新一下软件即可。

sudo apt-get upgrade

VMware 虚拟机走主机代理

先在主机连上代理

这里使用的是 WLAN 这个网卡

找到对应的 IP

在 Ubuntu 中可以使用 apt 安装 proxychains

通过 /etc/proxychains.conf 配置代理

# ProxyList format
# type host port [user pass]
# (values separated by 'tab' or 'blank')
#
#
# Examples:
#
# socks5 192.168.67.78 1080 lamer secret
# http 192.168.89.3 8080 justu hidden
# socks4 192.168.1.49 1080
# http 192.168.39.93 8080
#
#
# proxy types: http, socks4, socks5
# ( auth types supported: "basic"-http "user/pass"-socks )
#
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
# 在最后添加配置文件
# 注:这里写多少条就是多少层代理
http 192.168.164.1 1080
socks5 192.168.1.123 1080

使用方式:

proxychains <运行的命令> <命令参数>
# 使用 curl 测试
proxychains curl ip.cn

proxychains curl https://google.com

示例:

# 然后以后想用代理的地方都加上这个 proxychains
sudo proxychains apt update

#proxychains ping google.com
# 这条命令不会起作用,因为proxychains只能代理TCP连接,ping命令通过ICMP协议作用

注意:旧版本 proxychains 经常实效,原因是旧版 proxychains 挂 proxy_dns 这个选项(默认开启也理应开启)时走一个 4.2.2.2 的dns 服务器,而这个 dns 服务器已经半dead了很多时候连不上。其实这个选项是可以配置的,不过藏的很深,在 /usr/lib/proxychains3/proxyresolv

修改

sudo vim /usr/lib/proxychains3/proxyresolv

加入

DNS_SERVER=8.8.8.8

使用 proxychains4

Debian10 引入了 Proxychains4 版本,原版 Proxychains 已经年久失修,Proxychains4 是其他人的后续 fork 继续维护。

apt install proxychains4

配置文件也变成了 /etc/proxychains4.conf

sudo vim /etc/proxychains.conf

使用测试

proxychains4 curl www.httpbin.org/ip

Reference